// house_pkg/pages/locate/index.ts
// 导入qq地图的sdk
import qqMap from '../../../utils/qqmap'
Page({
  /**
   * 页面的初始数据
   */
  data: {},

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad() {
    // 获取当前位置的地址信息
    this.getLocation()
  },
  // 获取当前位置信息
  async getLocation() {
    const { latitude, longitude } = await wx.getLocation()
    // console.log(latitude, longitude)
    this.getPoint(latitude, longitude)
  },
  // 重新定位
  async chooseLocation() {
    // 用户所在位置经纬度
    const { latitude, longitude } = await wx.chooseLocation()
    // 查看经纬度
    // console.log(latitude, longitude)
    this.getPoint(latitude, longitude)
  },
  // 逆地址解析：将经纬度--转换为---文字描述的地址
  getPoint(latitude, longitude) {
    qqMap.reverseGeocoder({
      location: [latitude, longitude].join(','),
      success: ({ result: { address } }) => {
        // console.log(res)
        // 结果为当前所在的地址
        this.setData({ address })
      },
    })
    // 搜索周边社区

    qqMap.search({
      // 搜索关键字
      keyword: '住宅小区',
      // 搜索的定位--在定位周边搜索
      location: [latitude, longitude].join(','),
      // 查询数据条数
      page_size: 5,
      success: (res) => {
        // 将返回的数据处理后存储
        const points = []
        res.data.forEach(({ id, title, _distance }) => {
          points.push({ id, title, _distance })
        })
        // 更新数据
        this.setData({ points })
      },
      fail() {
        wx.utils.toast('没有找到附近的小区')
      },
      complete: () => {
        // 隐藏加载状态
        wx.hideLoading()
      },
    })
  },
  // 去具体的楼房
  goBuilding(ev) {
    // console.log('ev', ev)
    wx.navigateTo({
      url: '/house_pkg/pages/building/index?point=' + ev.mark.point,
    })
  },
})
